home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Think Class Libraries / CAccordionPane 1.0 / CAccordionPane.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-11-30  |  1.1 KB  |  60 lines  |  [TEXT/KAHL]

  1. #pragma once
  2.  
  3. #include <CPane.h>
  4.  
  5.  
  6. class CAccordionPane : public CPane // NOTE: This is an abstract class
  7. {
  8.     public:
  9.  
  10.         CRunArray* itsSubviewPortions;
  11.         long itsTotalFixedSize;
  12.  
  13.     public:
  14.     
  15.         void IAccordionPane
  16.             ( CView *anEnclosure
  17.             , CBureaucrat *aSupervisor
  18.             , short aWidth
  19.             , short aHeight
  20.             , short aHEncl
  21.             , short aVEncl
  22.             , SizingOption aHSizing
  23.             , SizingOption aVSizing );
  24.         virtual void Dispose( void );
  25.  
  26.         virtual void ChangeSize( Rect *delta, Boolean redraw );
  27.         virtual void ForceResize( Boolean redraw );
  28.  
  29.         virtual void SetSubviewPortion( CPane* aSubview, short aPortion, Boolean redraw );
  30.         
  31. }; /* CAccordionPane */
  32.  
  33.  
  34.  
  35. class CHAccordionPane : public CAccordionPane
  36. {
  37.     public:
  38.  
  39. #        define IHAccordionPane IAccordionPane
  40.  
  41.         virtual void ForceResize( Boolean redraw );        
  42.         virtual void AddSubview( CView* aSubview );
  43.  
  44. }; /* CHAccordionPane */
  45.  
  46.  
  47.  
  48. class CVAccordionPane : public CAccordionPane
  49. {
  50.     public:
  51.  
  52. #        define IVAccordionPane IAccordionPane
  53.  
  54.         virtual void ForceResize( Boolean redraw );        
  55.         virtual void AddSubview( CView* aSubview );
  56.  
  57. }; /* CVAccordionPane */
  58.  
  59.  
  60.